The present technology relates to a rendering processing technology, and particularly to a technology for generating rendering commands.
The use of high-quality graphics has spread, with personal computers and dedicated game machines executing applications such as games, simulations, and the like using high-quality three-dimensional computer graphics and reproducing video contents in which photographs taken from life and computer graphics are combined with each other, for example.
In general, graphics processing is performed by cooperation of a CPU and a graphics processing unit (GPU). The CPU is a general-purpose processor that performs general-purpose operations, whereas the GPU is a dedicated processor for performing advanced graphics operations. The CPU performs geometry operations such as projection transformation and the like on the basis of the three-dimensional model of an object, and the GPU receives vertex data and the like from the CPU and performs rendering. The GPU includes specialized hardware such as a rasterizer, a pixel shader, and the like, and executes the graphics processing by pipelining. Some of the latest GPUs have a programmable shader function, which is referred to as a program shader. A graphics library is generally provided to support shader programming.
When an object is rendered, the CPU needs to sequentially generate graphics commands to be executed by the hardware of the GPU, and pass the graphics commands to the GPU.
In connection with the related art, the reader is requested to refer to Japanese Patent Laid-Open No. 2008-123520.